#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>

int main(int argc,char* argv[])
{
	//输出 argv[1] 目录下所有文件名   能拿到文件名 就能操作文件

	if(argc < 2)
	{
		printf("请输入目录路径!\n");
		return -1;
	}

	struct stat st = {0};
	int ret = stat(argv[1],&st);
	if(-1 == ret)
	{
		printf("获取文件%s状态失败:%m\n",argv[1]);
		return -2;
	}

	DIR* pDir = NULL;
	struct dirent* pd = NULL;
	int cnt = 0;
	if(S_IFDIR&st.st_mode)
	{
		pDir = opendir(argv[1]);
		if(NULL == pDir)
		{
			printf("opendir失败:%m\n");
			return -4;
		}

		while(1)
		{
			pd = readdir(pDir);
			if(NULL == pd) break;
			cnt++;
			printf("%d:%s\n",cnt,pd->d_name);
		}

		closedir(pDir);//关闭目录

	}
	else
	{
		printf("只能遍历目录哟!\n");
		return -3;
	}
}
